#define _CRT_SECURE_NO_WARNINGS 1
//#include<iostream>
//using namespace std;
//int main()
//{
//
//    int a, b, c, d;
//    cin >> a >> b >> c >> d;
//    if (c < a && d < a)
//    {
//        cout << c << "-N " << d << "-N" << endl << "zhang da zai lai ba";
//    }
//    if (c<a && d>=b)
//    {
//        cout << c << "-N " << d << "-Y" << endl << "qing 2 zhao gu hao 1";
//    }
//    if (d<a && c>=b)
//    {
//        cout << c << "-Y " << d << "-N" << endl << "qing 1 zhao gu hao 2";
//    }
//    if (c < a && d >= a && d < b)
//    {
//        cout << c << "-N " << d << "-Y" << endl << "2: huan ying ru guan";
//    }
//    if (d < a && c >= a && c < b)
//    {
//        cout << c << "-Y " << d << "-N" << endl << "1: huan ying ru guan";
//    }
//    if (d >= b && c >= b)
//    {
//        cout << c << "-Y " << d << "-Y" << endl << "huan ying ru guan";
//    }
//    return 0;
//
//}

//#include<stdio.h>
//#include<string.h>
//int main()
//{
//    char a[10001] = { 0 };
//    char b[10001] = { 0 };
//    char _a[10001] = { 0 };
//    char _b[10001] = { 0 };
//    gets(a);
//    gets(b);
//    int k = 0;
//    for (int i = 1; i < strlen(a); i++)
//    {
//        int m = a[i] - '0';
//        int n = a[i - 1] - '0';
//
//        if (m % 2 == n % 2)
//        {
//            _a[k] = (m > n ? m : n) + '0';
//            k++;
//        }
//    }
// 
//    k = 0;
//    for (int i = 1; i < strlen(b); i++)
//    {
//        int m = b[i] - '0';
//        int n = b[i - 1] - '0';
//
//        if (m % 2 == n % 2)
//        {
//            _b[k] = (m > n ? m : n) + '0';
//            k++;
//        }
//    }
//
// 
//    if (strcpy(_a, _b))
//    {
//        puts(_a);
//        puts(_b);
//
//    }
//    else
//        puts(_a);
//    return 0;
//}

#include<stdio.h>
int main()
{
    int map[10][10] = { 0 };
    int row, col;
    scanf("%d %d", &row, &col);
    int n;
    scanf("%d", &n);
    int t, c;
    for (int i = 0; i < n; i++)
    {
        scanf("%d %d", &t, &c);
        if (t)
        {
            for (int j = 0; j < row; j++)
            {
                map[j][c - 1] = 1;
            }
        }
        else
        {
            for (int j = 0; j < col; j++)
            {
                map[c - 1][j] = 1;
            }
        }
    }
    int sum = 0;
    for (int i = 0; i < row; i++)
    {
        for (int j = 0; j < col; j++)
        {
            if (map[i][j] == 0)
            {
                sum++;
            }
        }
    }
    printf("%d", sum);
    return 0;
}
